Re: ORDER BY and LIMIT not propagated on inherited - Mailing list pgsql-performance

From Jens-Wolfhard Schicke
Subject Re: ORDER BY and LIMIT not propagated on inherited
Date
Msg-id 6A72374A62C8721E4E414937@[192.168.1.72]
Whole thread Raw
In response to Re: ORDER BY and LIMIT not propagated on inherited  (Matteo Beccati <php@beccati.com>)
List pgsql-performance
>>> The correct strategy IMHO would
>>> be applying the order by and limit for each child table (which results
>>> in an index scan, if possible), appending, then finally sorting a bunch
>>> of rows, and limiting again.
>>
>> This would be a win in some cases, and in many others a loss (ie, wasted
>> sort steps).  The hard part is determining when to apply it.
>
> I don't actually know how many smaller separate sorts compare to a single
> big sort, but I guess the difference wouldn't be so big if the LIMIT is
> low. Add to this that you don't need to append the whole rowsets, but
> just smaller ones.

I think if you have a bunch of sorted thingies, you'd perform exactly one
merge step and be done, should be possible to do that in O(child_tables *
rows)...

Mit freundlichem Gruß
Jens Schicke
--
Jens Schicke              j.schicke@asco.de
asco GmbH              http://www.asco.de
Mittelweg 7              Tel 0531/3906-127
38106 Braunschweig          Fax 0531/3906-400

pgsql-performance by date:

Previous
From: Matteo Beccati
Date:
Subject: Re: ORDER BY and LIMIT not propagated on inherited
Next
From: Patrick Hatcher
Date:
Subject: Poor SQL performance